"""
###########
Layer 描述
###########

用于管理数据库等外部服务的连接与断开

Tornado 在处理一个请求的时候，可能会对同一个数据库进行多次查询；
为了简化业务代码，需要自动建立和断开数据库的连接。

代码分层
########

+------------------+ +--------------------+
|  RequestHandler  | |  WebSocketHandler  |
+------------------+ +--------------------+
+-----------------------------------------+
|         Business Logic Service          |
+-----------------------------------------+
+-----------------------------------------+
|             Model Manager               |
+-----------------------------------------+
+-----------------------------------------+
|           Connection Proxy              |
+-----------------------------------------+
+-----------------------------------------+
|               database                  |
+-----------------------------------------+


* database 负责维护具体的数据库链接
* Connection Proxy 负责维护一组数据库连接/HTTP Session  等
* Model Manager 针对某一类数据进行封装，暴露简单的数据操作接口，
而隐藏具体数据操作的实现
* Business Logic Service 封装业务逻辑，一个业务逻辑可能操作多种数据
* RequestHandler/WebSocketHandler 处理接口调用

"""
